package com.ruoyi.mushcoin.domain.bo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.orm.core.domain.BaseEntity;
import com.ruoyi.mushcoin.domain.TgUserTaskRewards;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.Date;

/**
 * 用户任务奖励列(H5)业务对象 tg_user_task_rewards
 *
 * @author billy
 * @date 2024-08-18
 */
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TgUserTaskRewards.class, reverseConvertGenerate = false)
public class TgUserTaskRewardsBo extends BaseEntity {

    /**
     *
     */
    @NotNull(message = "不能为空")
    private Long id;

    /**
     * 奖励用户ID
     */
    @NotNull(message = "奖励用户ID不能为空")
    private Long userId;

    /**
     * 1每日签到 2加入TG频道 3加入钱币部落 4关注我们的X账号 5提升我们的TG频道 6选择您的交换货币 7邀请1个朋友 8邀请满3个朋友
     */
    @NotNull(message = "1每日签到 2加入TG频道 3加入钱币部落 4关注我们的X账号 5提升我们的TG频道 6选择您的交换货币 7邀请1个朋友 8邀请满3个朋友不能为空")
    private Integer taskType;

    /**
     * 任务奖励
     */
    @NotNull(message = "任务奖励不能为空")
    private Long taskRewards;

    /**
     *
     */
    @NotNull(message = "不能为空")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date taskDate;

    /**
     * 注册用户
     */
    @NotNull(message = "注册用户不能为空")
    private Long reUserId;


    /** 任务奖励，ganme金币 **/
    private Long taskGold;
    /** 任务奖励，ganme钻石 **/
    private Long taskDiamond;
    /** 发放状态： 0未发 1已发 2后台按批次待发 **/
    private Integer status;
    /** 任务用户标签 **/
    private Integer taskUserTag;
    /** 备注 **/
    private String remark;
}
